/**
 * 需求：实现一个 logger 中间件，功能是：
 *    在每个动作派发之后，
 *      1. 仓库数据改变之前的数据
 *      2. 当前的动作
 *      3. 仓库数据改变之后的数据
 * 
 *   注意：
 *      该中间件，必须放置在中间件流程中的最后一个
 */
export default (storeAPI: any) => (next: any) => (action: any) => {
  // ...
  console.log("Prev State: ", storeAPI.getState());
  console.log("Action: ", action);
  next(action);
  console.log("Next State: ", storeAPI.getState());
};
